package cn.lg.soar.boot.fc.service;

import cn.lg.soar.boot.fc.entity.vo.FcTreeVo;
import cn.lg.soar.common.model.HttpResult;
import cn.lg.soar.common.model.PageQuery;
import cn.lg.soar.common.model.PageResult;
import cn.lg.soar.database.base.service.IBaseService;
import cn.lg.soar.boot.fc.entity.Rent;
import cn.lg.soar.database.query.QueryParams;
import com.alibaba.fastjson.JSONArray;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.List;
import java.util.Map;

/**
 * 租金管理表
 * @author BoBo
 * @since 2025-02-06
 * 开源项目：https://gitee.com/lgx1992/lg-soar 求star！请给我star！请帮我点个star！
 */
public interface RentService extends IBaseService<Rent> {

    /**
     * 添加方法
     */
    HttpResult<Serializable> addRent(Rent rent);


    /**
     * 修改方法
     */

    HttpResult<Serializable> updateRent(Rent rent);

    /**
     * 根据id查询一条数据
     */

    HttpResult<Rent> getById(Long id);

    /**
     * 获取 tree
     * @param pageQuery
     * @return
     */
    PageResult<FcTreeVo> queryResultVo (PageQuery pageQuery, QueryParams params);

    /**
     * 通过name获取数据
     * @param name
     * @return
     */
    Rent getByName (String name);

    /**
     * 通过id获取数据
     * @param id
     * @return
     */
    Rent getOneById (Long id);

    /**
     * 拖拽排序
     */
    HttpResult<Serializable> updateSort(List<Map<String, BigInteger>> sortedData);

}
